
try:
    import Image
except ImportError:
    from PIL import Image

# PIL 图像的变换
class Convert:
    def __init__(self, mode='RGB'):
        """
        初始化 Convert 变换。

        Args:
            mode (str): 图像模式，例如 'RGB' 或 'BGR'。
        """
        self.mode = mode

    def __call__(self, img):
        """
        执行 Convert 变换操作。

        Args:
            img (PIL.Image.Image): 待变换的 PIL 图像。

        Returns:
            PIL.Image.Image: 变换后的图像。
        """
        if self.mode == 'BGR':
            # 如果是 BGR 模式，将 RGB 色彩通道交换
            img = img.convert('RGB')
            r, g, b = img.split()
            img = Image.merge('RGB', (b, g, r))
            return img
        else:
            # 否则，使用指定的模式进行转换
            return img.convert(self.mode)

